1. Field of the Invention
The present invention generally relates to characterization of color devices and more particularly to characterization of a color input device using nonlinear regression.
2. Description of the Related Art
Electronic color devices used to input electronic documents represent colors using three colors of light, namely Red, Green, and Blue (RGB). By adding varying intensities of these three colors of light, electronic devices can simulate the appearance of a variety of colors. A color input device, such as a document scanner, uses light sensors to measure the intensity of red, green, and blue light reflected from an object. These measurements of the intensity of the individual colors of light may then be used by other color devices to represent the color of the captured object. Because red, green, and blue light may be added together to simulate colors, they are termed “additive primaries.”
Within a color device, a color may be represented using three variables representing the separate intensities of the red, green, and blue light that are combined to create the color. The set of three values is termed a “color value.” As three values are used to describe a color value, color values may be thought of as being points within a three-dimensional space termed a “color space.”
The response of a color input device to red, green, and blue light intensities varies based on the color input device's optical design, sensor materials, and electronic systems. This means that different color input devices having different designs will generate different device dependent color values for the same source image. Therefore, in order to accurately input a color into a color input device and then display that color on a color output device, the color values generated by the input color device for a color must be mathematically transformed to generate the color values corresponding to that color on the color output device.
Management of the transformations between color input device color values and color output device color values is ordinarily performed by a Color Management System (CMS) within a data processing system such as a personal computer. A typical CMS manages color value transformations between a variety of color input and output devices. This means that the CMS must be able to transform color value data from each potential color input device for display on each potential color output device. The CMS's task is made simpler by transforming device dependent color values, which represent colors for one particular device, into a common device independent color space. Within the color space, colors may be represented by a small set of continuous variables with each color represented by a unique set of values. For example, when the color input device generates a device dependent color value in response to a specific source color, the device dependent color value is transformed into a color value in the device independent color space representing the specified color. To display the specified color on a color output device, the color value in the device independent color space is transformed into a device dependent color value that is used by the color output device to generate the specified color.
Use of a device independent color space simplifies the operations of a CMS because the CMS does not need to keep track of a transformation for each possible pairing of color input device and color output device. Instead, the CMS maintains a device profile for each color device. A color input device's profile describes the transformation used to transform the color input devices's color values into a color represented in the device independent color space.
Standardized device independent color spaces are established by standards organizations such as the Commission Internationale de l'Éclairage (CIE). For example, CIE has specified the perceptually non-uniform color space CIEXYZ in 1931, and the perceptually uniform color spaces CIELUV, CIELAB in 1976. They are by far still the most commonly used device independent color spaces.
The main difference between CIEXYZ and CIELUV or CIELAB is that CIELUV and CIELAB were designed to be perceptually uniform. A perceptually uniform space has the property that the Euclidean distance between two color values gives a measure of the human perceived “closeness” of the two colors. This closeness is generally referred to as “ΔE”. Because of the failure of CIELUV space or CIELAB space to be truly perceptually uniform, other color difference equations have been devised to provide better measure of ΔE. CIE originally recommended the “1976 formulae,” one for the CIELUV space and one for the CIELAB space, which are simply the Euclidean distances of the spaces. As noted above, they were not satisfactory measure of the human perceived closeness. In 1994, CIE introduced the CIE94 equations, and more recently in 2000, the CIEDE2000 equations. These equations are considerably more complex than the 1976 equations, but they provide better measures of ΔE.
The transformation used to transform a color device's color values into a device independent color space are ordinarily determined for each color device. The process of determining the transformation is termed “calorimetric characterization” or simply “color characterization.” One approach to color characterization of color input devices such as scanners and digital cameras is to capture a color target having color patches representing a set of reference colors. The set of reference colors have known color values in a device independent color space such as CIEXYZ, CIELAB or CIELUV. The result of the capture is a bitmap image of the color patches, each of which is associated with an RGB value that is an average of RGB values for all captured pixels belonging to the color patch.
Once the set of RGB values are collected, color characterization is used to establish an empirical relationship between the device dependent RGB values and the known color values of each color patch in the device independent color space. More specifically, if the device dependent color space is denoted as RGB and the device independent color space is denoted as LMN, where LMN could be any of the device independent color spaces such as CIEXYZ, CIELAB, or CIELUV, then color characterization is a process of seeking a mathematical transformation from RGB to LMN that models as accurately as possible the behavior of the input device. Such a transformation is commonly termed a “forward model.”
Particularly in the case of color input devices, it is well known that a forward model with good accuracy may be created using low degree polynomials. For example, a set of three cubic polynomials with 20 terms each in the R, G, and B variables may be used to calculate the L, M, N components of the chosen device independent color space LMN. For example, the form of the 20-term polynomial for L is:
  L  =            a      1        +                  a        2            ⁢      R        +                  a        3            ⁢      G        +                  a        4            ⁢      B        +                  a        5            ⁢              R        2              +                  a        6            ⁢      RG        +                  a        7            ⁢      RB        +                  a        8            ⁢              G        2              +                  a        9            ⁢      GB        +                  a        10            ⁢              B        2              +                  a        11            ⁢              R        3              +                  a        12            ⁢              R        2            ⁢      G        +                  a        13            ⁢              R        2            ⁢      B        +                  a        14            ⁢              RG        2              +                  a        15            ⁢      RGB        +                  a        16            ⁢              RB        2              +                  a        17            ⁢              G        3              +                  a        18            ⁢              G        2            ⁢      B        +                  a        19            ⁢              GB        2              +                  a        20            ⁢              B        3            Similar polynomials may be used to calculate the M and N components of the LMN color space using an input device's RGB values.
Since there are more measurements than coefficients, linear regression techniques may be used to determine the coefficients of the polynomials used in the forward model. Linear regression techniques find the coefficients of the polynomials that minimize a difference metric that measures errors between a reference color patch's known color value in the device independent color space and a color value calculated using the polynomials for the color patch from the RGB values of the color input patch. During the linear regression process, the coefficients of the polynomials are determined such that the sum of the color differences for all of the color patch reference color values and corresponding calculated color values is minimized. The resulting polynomials are then used as the forward model for transforming device dependent color values generated by the color input device into color values in the device independent color space.
A known problem with linear regression techniques is that linear regression implicitly assumes that the difference metric minimized during the linear regression process is the Euclidean distance between two color values in the color space LMN. However, it is questionable whether the Euclidean distance in the underlying color space is the correct measurement of color differences for the calculated color values. For instance, the Euclidean distance in the CIELUV color space generally gives an idea of how close two colors are, but there are better color difference equations to calculate ΔE. When two colors are close, the Euclidean distance measurement and ΔE may actually change in opposite directions, that is, if the two colors are perturbed slightly, they may move closer according to one measurement, and further apart in the other. As such, linear regression processes may not generate polynomials with optimally minimized ΔE values even though the Euclidean distances may be optimally minimal.
As described above, some color difference equations give better measures of human perceived differences between color values within a color space. Therefore, a forward model determined using this class of color difference equations, rather than a Euclidean distance measurement, would yield more accurate device dependent color value to device independent color value transformations as perceived by a human. However, most color difference equations used to measure human perceived color differences are non-Euclidean distances of the underlying color space. This means that linear regression techniques may not be used to determine a transformation equation using a difference metric based on human perceived color differences.
Therefore, a need exists for a color characterization process that uses a difference metric based on human perceived color differences to determine a forward model for a color input device's color values. Various aspects of the present invention meet such a need.